\contentsline {chapter}{\numberline {1}Introduction}{8}{chapter.1}
\contentsline {section}{\numberline {1.1}License Information}{8}{section.1.1}
\contentsline {subsection}{\numberline {1.1.1}Hold Music}{9}{subsection.1.1.1}
\contentsline {section}{\numberline {1.2}Security}{10}{section.1.2}
\contentsline {subsection}{\numberline {1.2.1}Introduction}{10}{subsection.1.2.1}
\contentsline {subsection}{\numberline {1.2.2}Network Security}{10}{subsection.1.2.2}
\contentsline {subsection}{\numberline {1.2.3}Dialplan Security}{10}{subsection.1.2.3}
\contentsline {subsection}{\numberline {1.2.4}Log Security}{11}{subsection.1.2.4}
\contentsline {section}{\numberline {1.3}Hardware}{11}{section.1.3}
\contentsline {subsection}{\numberline {1.3.1}Introduction}{11}{subsection.1.3.1}
\contentsline {subsection}{\numberline {1.3.2}DAHDI compatible hardware}{12}{subsection.1.3.2}
\contentsline {subsection}{\numberline {1.3.3}Non-DAHDI compatible hardware}{13}{subsection.1.3.3}
\contentsline {subsection}{\numberline {1.3.4}mISDN compatible hardware}{13}{subsection.1.3.4}
\contentsline {subsection}{\numberline {1.3.5}Miscellaneous other interfaces}{14}{subsection.1.3.5}
\contentsline {chapter}{\numberline {2}Configuration}{15}{chapter.2}
\contentsline {section}{\numberline {2.1}General Configuration Information}{15}{section.2.1}
\contentsline {subsection}{\numberline {2.1.1}Configuration Parser}{15}{subsection.2.1.1}
\contentsline {subsubsection}{Introduction}{15}{section*.1}
\contentsline {subsubsection}{General syntax}{15}{section*.2}
\contentsline {subsubsection}{Comments}{16}{section*.3}
\contentsline {subsubsection}{Including other files}{16}{section*.4}
\contentsline {subsubsection}{Adding to an existing section}{17}{section*.5}
\contentsline {subsubsection}{Defining a template-only section}{17}{section*.6}
\contentsline {subsubsection}{Using templates (or other configuration sections)}{17}{section*.7}
\contentsline {subsubsection}{Additional Examples}{18}{section*.8}
\contentsline {subsection}{\numberline {2.1.2}Asterisk.conf}{19}{subsection.2.1.2}
\contentsline {subsubsection}{Asterisk Main Configuration File}{19}{section*.9}
\contentsline {subsection}{\numberline {2.1.3}CLI Prompt}{21}{subsection.2.1.3}
\contentsline {subsubsection}{Changing the CLI Prompt}{21}{section*.10}
\contentsline {subsection}{\numberline {2.1.4}Extensions}{22}{subsection.2.1.4}
\contentsline {subsubsection}{The Asterisk dialplan}{22}{section*.11}
\contentsline {subsubsection}{Example dialplan}{23}{section*.12}
\contentsline {subsubsection}{Special extensions}{23}{section*.13}
\contentsline {subsection}{\numberline {2.1.5}IP Quality of Service}{24}{subsection.2.1.5}
\contentsline {subsubsection}{Introduction}{24}{section*.14}
\contentsline {subsubsection}{IP TOS values}{24}{section*.15}
\contentsline {subsubsection}{802.1p CoS values}{25}{section*.16}
\contentsline {subsubsection}{Recommended values}{25}{section*.17}
\contentsline {subsubsection}{IAX2}{25}{section*.18}
\contentsline {subsubsection}{SIP}{26}{section*.19}
\contentsline {subsubsection}{Other RTP channels}{26}{section*.20}
\contentsline {subsubsection}{Reference}{26}{section*.21}
\contentsline {subsection}{\numberline {2.1.6}MP3 Support}{27}{subsection.2.1.6}
\contentsline {subsubsection}{MP3 Music On Hold}{27}{section*.22}
\contentsline {subsection}{\numberline {2.1.7}ICES}{27}{subsection.2.1.7}
\contentsline {section}{\numberline {2.2}Database Support}{28}{section.2.2}
\contentsline {subsection}{\numberline {2.2.1}Realtime Database Configuration}{28}{subsection.2.2.1}
\contentsline {subsubsection}{Introduction}{28}{section*.23}
\contentsline {subsubsection}{Two modes: Static and Realtime}{28}{section*.24}
\contentsline {subsubsection}{Realtime SIP friends}{29}{section*.25}
\contentsline {subsubsection}{Realtime H.323 friends}{29}{section*.26}
\contentsline {subsubsection}{New function in the dial plan: The Realtime Switch}{29}{section*.27}
\contentsline {subsubsection}{Capabilities}{30}{section*.28}
\contentsline {subsubsection}{Configuration in extconfig.conf}{30}{section*.29}
\contentsline {subsubsection}{Limitations}{30}{section*.30}
\contentsline {subsubsection}{FreeTDS supported with connection pooling}{31}{section*.31}
\contentsline {subsection}{\numberline {2.2.2}FreeTDS}{31}{subsection.2.2.2}
\contentsline {section}{\numberline {2.3}Privacy}{31}{section.2.3}
\contentsline {subsection}{\numberline {2.3.1}First of all}{31}{subsection.2.3.1}
\contentsline {subsection}{\numberline {2.3.2}Next, Fight against autodialers!!}{31}{subsection.2.3.2}
\contentsline {subsection}{\numberline {2.3.3}Next, Fight against the empty CALLERID!}{32}{subsection.2.3.3}
\contentsline {subsection}{\numberline {2.3.4}Next, use a WELCOME MENU !}{32}{subsection.2.3.4}
\contentsline {subsubsection}{Example usage of Zapateller and PrivacyManager}{33}{section*.32}
\contentsline {subsection}{\numberline {2.3.5}Next: Torture Them!}{33}{subsection.2.3.5}
\contentsline {subsection}{\numberline {2.3.6}Using Call Screening}{34}{subsection.2.3.6}
\contentsline {subsection}{\numberline {2.3.7}The 'N' and 'n' options}{36}{subsection.2.3.7}
\contentsline {subsection}{\numberline {2.3.8}Recorded Introductions}{36}{subsection.2.3.8}
\contentsline {subsubsection}{Philosophical Side Note}{36}{section*.33}
\contentsline {subsubsection}{Introductions}{36}{section*.34}
\contentsline {chapter}{\numberline {3}Channel Variables}{39}{chapter.3}
\contentsline {section}{\numberline {3.1}Introduction}{39}{section.3.1}
\contentsline {section}{\numberline {3.2}Parameter Quoting}{39}{section.3.2}
\contentsline {section}{\numberline {3.3}Variables}{40}{section.3.3}
\contentsline {section}{\numberline {3.4}Variable Inheritance}{40}{section.3.4}
\contentsline {subsection}{\numberline {3.4.1}Example}{41}{subsection.3.4.1}
\contentsline {section}{\numberline {3.5}Selecting Characters from Variables}{41}{section.3.5}
\contentsline {section}{\numberline {3.6}Expressions}{42}{section.3.6}
\contentsline {subsection}{\numberline {3.6.1}Spaces Inside Variables Values}{42}{subsection.3.6.1}
\contentsline {subsection}{\numberline {3.6.2}Operators}{43}{subsection.3.6.2}
\contentsline {subsection}{\numberline {3.6.3}Floating Point Numbers}{45}{subsection.3.6.3}
\contentsline {subsection}{\numberline {3.6.4}Functions}{46}{subsection.3.6.4}
\contentsline {subsection}{\numberline {3.6.5}Examples}{47}{subsection.3.6.5}
\contentsline {subsection}{\numberline {3.6.6}Numbers Vs. Strings}{49}{subsection.3.6.6}
\contentsline {subsection}{\numberline {3.6.7}Conditionals}{49}{subsection.3.6.7}
\contentsline {subsection}{\numberline {3.6.8}Parse Errors}{50}{subsection.3.6.8}
\contentsline {subsection}{\numberline {3.6.9}NULL Strings}{50}{subsection.3.6.9}
\contentsline {subsection}{\numberline {3.6.10}Warning}{50}{subsection.3.6.10}
\contentsline {subsection}{\numberline {3.6.11}Incompatabilities}{51}{subsection.3.6.11}
\contentsline {subsection}{\numberline {3.6.12}Debugging Hints}{52}{subsection.3.6.12}
\contentsline {section}{\numberline {3.7}Asterisk standard channel variables}{54}{section.3.7}
\contentsline {subsection}{\numberline {3.7.1}Application return values}{55}{subsection.3.7.1}
\contentsline {subsection}{\numberline {3.7.2}Various application variables}{56}{subsection.3.7.2}
\contentsline {subsection}{\numberline {3.7.3}The MeetMe Conference Bridge}{57}{subsection.3.7.3}
\contentsline {subsection}{\numberline {3.7.4}The VoiceMail() application}{57}{subsection.3.7.4}
\contentsline {subsection}{\numberline {3.7.5}The VMAuthenticate() application}{57}{subsection.3.7.5}
\contentsline {subsection}{\numberline {3.7.6}DUNDiLookup()}{57}{subsection.3.7.6}
\contentsline {subsection}{\numberline {3.7.7}chan\_dahdi}{57}{subsection.3.7.7}
\contentsline {subsection}{\numberline {3.7.8}chan\_sip}{58}{subsection.3.7.8}
\contentsline {subsection}{\numberline {3.7.9}chan\_agent}{58}{subsection.3.7.9}
\contentsline {subsection}{\numberline {3.7.10}The Dial() application}{58}{subsection.3.7.10}
\contentsline {subsection}{\numberline {3.7.11}The chanisavail() application}{59}{subsection.3.7.11}
\contentsline {subsection}{\numberline {3.7.12}Dialplan Macros}{59}{subsection.3.7.12}
\contentsline {subsection}{\numberline {3.7.13}The ChanSpy() application}{59}{subsection.3.7.13}
\contentsline {subsection}{\numberline {3.7.14}OSP}{59}{subsection.3.7.14}
\contentsline {chapter}{\numberline {4}AEL: Asterisk Extension Language}{61}{chapter.4}
\contentsline {section}{\numberline {4.1}Introduction}{61}{section.4.1}
\contentsline {section}{\numberline {4.2}Asterisk in a Nutshell}{62}{section.4.2}
\contentsline {subsection}{\numberline {4.2.1}Contexts}{62}{subsection.4.2.1}
\contentsline {subsection}{\numberline {4.2.2}Extensions and priorities}{62}{subsection.4.2.2}
\contentsline {subsection}{\numberline {4.2.3}Macros}{63}{subsection.4.2.3}
\contentsline {subsection}{\numberline {4.2.4}Applications}{63}{subsection.4.2.4}
\contentsline {section}{\numberline {4.3}Getting Started}{64}{section.4.3}
\contentsline {section}{\numberline {4.4}Debugging}{64}{section.4.4}
\contentsline {section}{\numberline {4.5}About "aelparse"}{64}{section.4.5}
\contentsline {section}{\numberline {4.6}General Notes about Syntax}{65}{section.4.6}
\contentsline {section}{\numberline {4.7}Keywords}{66}{section.4.7}
\contentsline {section}{\numberline {4.8}Procedural Interface and Internals}{68}{section.4.8}
\contentsline {subsection}{\numberline {4.8.1}AEL version 2 BNF}{68}{subsection.4.8.1}
\contentsline {section}{\numberline {4.9}AEL Example USAGE}{71}{section.4.9}
\contentsline {subsection}{\numberline {4.9.1}Comments}{71}{subsection.4.9.1}
\contentsline {subsection}{\numberline {4.9.2}Context}{72}{subsection.4.9.2}
\contentsline {subsection}{\numberline {4.9.3}Extensions}{72}{subsection.4.9.3}
\contentsline {subsection}{\numberline {4.9.4}Includes}{73}{subsection.4.9.4}
\contentsline {subsection}{\numberline {4.9.5}\#include}{74}{subsection.4.9.5}
\contentsline {subsection}{\numberline {4.9.6}Dialplan Switches}{74}{subsection.4.9.6}
\contentsline {subsection}{\numberline {4.9.7}Ignorepat}{74}{subsection.4.9.7}
\contentsline {subsection}{\numberline {4.9.8}Variables}{74}{subsection.4.9.8}
\contentsline {subsection}{\numberline {4.9.9}Local Variables}{75}{subsection.4.9.9}
\contentsline {subsection}{\numberline {4.9.10}Loops}{76}{subsection.4.9.10}
\contentsline {subsection}{\numberline {4.9.11}Conditionals}{76}{subsection.4.9.11}
\contentsline {subsection}{\numberline {4.9.12}Break, Continue, and Return}{78}{subsection.4.9.12}
\contentsline {subsection}{\numberline {4.9.13}goto, jump, and labels}{78}{subsection.4.9.13}
\contentsline {subsection}{\numberline {4.9.14}Macros}{80}{subsection.4.9.14}
\contentsline {section}{\numberline {4.10}Examples}{80}{section.4.10}
\contentsline {section}{\numberline {4.11}Semantic Checks}{81}{section.4.11}
\contentsline {section}{\numberline {4.12}Differences with the original version of AEL}{83}{section.4.12}
\contentsline {section}{\numberline {4.13}Hints and Bugs}{85}{section.4.13}
\contentsline {section}{\numberline {4.14}The Full Power of AEL}{86}{section.4.14}
\contentsline {chapter}{\numberline {5}SLA: Shared Line Appearances}{87}{chapter.5}
\contentsline {section}{\numberline {5.1}Introduction}{87}{section.5.1}
\contentsline {section}{\numberline {5.2}Configuration}{87}{section.5.2}
\contentsline {subsection}{\numberline {5.2.1}Summary}{87}{subsection.5.2.1}
\contentsline {subsection}{\numberline {5.2.2}Dialplan}{87}{subsection.5.2.2}
\contentsline {subsection}{\numberline {5.2.3}Trunks}{88}{subsection.5.2.3}
\contentsline {subsection}{\numberline {5.2.4}Stations}{89}{subsection.5.2.4}
\contentsline {section}{\numberline {5.3}Configuration Examples}{90}{section.5.3}
\contentsline {subsection}{\numberline {5.3.1}Basic SLA}{90}{subsection.5.3.1}
\contentsline {subsection}{\numberline {5.3.2}SLA and Voicemail}{91}{subsection.5.3.2}
\contentsline {section}{\numberline {5.4}Call Handling}{93}{section.5.4}
\contentsline {subsection}{\numberline {5.4.1}Summary}{93}{subsection.5.4.1}
\contentsline {subsection}{\numberline {5.4.2}Station goes off hook (not ringing)}{93}{subsection.5.4.2}
\contentsline {subsection}{\numberline {5.4.3}Station goes off hook (ringing)}{93}{subsection.5.4.3}
\contentsline {subsection}{\numberline {5.4.4}Line button on a station is pressed}{94}{subsection.5.4.4}
\contentsline {chapter}{\numberline {6}Channel Drivers}{95}{chapter.6}
\contentsline {section}{\numberline {6.1}IAX2}{95}{section.6.1}
\contentsline {subsection}{\numberline {6.1.1}Introduction}{95}{subsection.6.1.1}
\contentsline {subsection}{\numberline {6.1.2}Why IAX2?}{95}{subsection.6.1.2}
\contentsline {subsection}{\numberline {6.1.3}Configuration}{97}{subsection.6.1.3}
\contentsline {subsection}{\numberline {6.1.4}IAX2 Jitterbuffer}{97}{subsection.6.1.4}
\contentsline {subsubsection}{The new jitterbuffer}{97}{section*.35}
\contentsline {subsubsection}{PLC}{97}{section*.36}
\contentsline {subsubsection}{Trunktimestamps}{97}{section*.37}
\contentsline {subsubsection}{Communication with Asterisk v1.0.x systems}{98}{section*.38}
\contentsline {subsubsection}{Testing and monitoring}{98}{section*.39}
\contentsline {subsubsection}{Reporting problems}{99}{section*.40}
\contentsline {section}{\numberline {6.2}mISDN}{100}{section.6.2}
\contentsline {subsection}{\numberline {6.2.1}Introduction}{100}{subsection.6.2.1}
\contentsline {subsection}{\numberline {6.2.2}Features}{100}{subsection.6.2.2}
\contentsline {subsection}{\numberline {6.2.3}Fast Installation Guide}{101}{subsection.6.2.3}
\contentsline {subsection}{\numberline {6.2.4}Pre-Requisites}{101}{subsection.6.2.4}
\contentsline {subsection}{\numberline {6.2.5}Configuration}{101}{subsection.6.2.5}
\contentsline {subsubsection}{misdn.conf: [general]}{102}{section*.41}
\contentsline {subsubsection}{misdn.conf: [default] subsection}{102}{section*.42}
\contentsline {subsubsection}{misdn.conf: user/port subsections}{102}{section*.43}
\contentsline {subsubsection}{Dial and Options String}{102}{section*.44}
\contentsline {subsection}{\numberline {6.2.6}mISDN CLI commands}{104}{subsection.6.2.6}
\contentsline {subsection}{\numberline {6.2.7}mISDN Variables}{104}{subsection.6.2.7}
\contentsline {subsection}{\numberline {6.2.8}Debugging and sending bug reports}{105}{subsection.6.2.8}
\contentsline {subsection}{\numberline {6.2.9}Examples}{105}{subsection.6.2.9}
\contentsline {subsection}{\numberline {6.2.10}Known Problems}{105}{subsection.6.2.10}
\contentsline {section}{\numberline {6.3}Local}{105}{section.6.3}
\contentsline {subsection}{\numberline {6.3.1}Introduction}{105}{subsection.6.3.1}
\contentsline {subsection}{\numberline {6.3.2}Syntax}{106}{subsection.6.3.2}
\contentsline {subsection}{\numberline {6.3.3}Purpose}{106}{subsection.6.3.3}
\contentsline {subsection}{\numberline {6.3.4}Examples}{107}{subsection.6.3.4}
\contentsline {subsection}{\numberline {6.3.5}Caveats}{107}{subsection.6.3.5}
\contentsline {chapter}{\numberline {7}Distributed Universal Number Discovery (DUNDi)}{108}{chapter.7}
\contentsline {section}{\numberline {7.1}Introduction}{108}{section.7.1}
\contentsline {section}{\numberline {7.2}DUNDIQUERY and DUNDIRESULT}{109}{section.7.2}
\contentsline {section}{\numberline {7.3}Peering Agreement}{109}{section.7.3}
\contentsline {chapter}{\numberline {8}ENUM}{123}{chapter.8}
\contentsline {section}{\numberline {8.1}The ENUMLOOKUP dialplan function}{123}{section.8.1}
\contentsline {subsection}{\numberline {8.1.1}Arguments}{124}{subsection.8.1.1}
\contentsline {subsection}{\numberline {8.1.2}Examples}{125}{subsection.8.1.2}
\contentsline {subsection}{\numberline {8.1.3}Usage notes and subtle features}{127}{subsection.8.1.3}
\contentsline {subsection}{\numberline {8.1.4}Some more Examples}{129}{subsection.8.1.4}
\contentsline {chapter}{\numberline {9}AMI: Asterisk Manager Interface}{131}{chapter.9}
\contentsline {section}{\numberline {9.1}The Asterisk Manager TCP/IP API}{131}{section.9.1}
\contentsline {section}{\numberline {9.2}Device status reports}{132}{section.9.2}
\contentsline {section}{\numberline {9.3}Command Syntax}{132}{section.9.3}
\contentsline {section}{\numberline {9.4}Manager commands}{132}{section.9.4}
\contentsline {section}{\numberline {9.5}Examples}{132}{section.9.5}
\contentsline {section}{\numberline {9.6}Some standard AMI headers}{133}{section.9.6}
\contentsline {section}{\numberline {9.7}Asynchronous Javascript Asterisk Manger (AJAM)}{137}{section.9.7}
\contentsline {subsection}{\numberline {9.7.1}Setup the Asterisk HTTP server}{137}{subsection.9.7.1}
\contentsline {subsection}{\numberline {9.7.2}Allow Manager Access via HTTP}{138}{subsection.9.7.2}
\contentsline {subsection}{\numberline {9.7.3}Integration with other web servers}{139}{subsection.9.7.3}
\contentsline {chapter}{\numberline {10}CDR: Call Detail Records}{140}{chapter.10}
\contentsline {section}{\numberline {10.1}Applications}{140}{section.10.1}
\contentsline {section}{\numberline {10.2}CDR Fields}{140}{section.10.2}
\contentsline {section}{\numberline {10.3}Variables}{142}{section.10.3}
\contentsline {section}{\numberline {10.4}Storage Backends}{143}{section.10.4}
\contentsline {subsection}{\numberline {10.4.1}Microsoft SQL Server}{143}{subsection.10.4.1}
\contentsline {subsubsection}{ODBC using cdr\_odbc}{143}{section*.45}
\contentsline {subsubsection}{TDS, using cdr\_tds}{145}{section*.46}
\contentsline {subsection}{\numberline {10.4.2}MySQL}{146}{subsection.10.4.2}
\contentsline {subsection}{\numberline {10.4.3}PostgreSQL}{146}{subsection.10.4.3}
\contentsline {subsection}{\numberline {10.4.4}SQLite 2}{147}{subsection.10.4.4}
\contentsline {subsection}{\numberline {10.4.5}SQLite 3}{147}{subsection.10.4.5}
\contentsline {subsection}{\numberline {10.4.6}RADIUS}{147}{subsection.10.4.6}
\contentsline {subsubsection}{What is needed}{147}{section*.47}
\contentsline {subsubsection}{Installation of the Radiusclient library}{148}{section*.48}
\contentsline {subsubsection}{Configuration of the Radiusclient library}{148}{section*.49}
\contentsline {subsubsection}{Install FreeRADIUS Server (Version 1.1.1)}{149}{section*.50}
\contentsline {subsubsection}{Configuration of the FreeRADIUS Server}{149}{section*.51}
\contentsline {subsubsection}{Asterisk Accounting Configuration}{150}{section*.52}
\contentsline {subsubsection}{Logged Values}{150}{section*.53}
\contentsline {chapter}{\numberline {11}Voicemail}{152}{chapter.11}
\contentsline {section}{\numberline {11.1}ODBC Storage}{152}{section.11.1}
\contentsline {section}{\numberline {11.2}IMAP Storage}{153}{section.11.2}
\contentsline {subsection}{\numberline {11.2.1}Installation Notes}{153}{subsection.11.2.1}
\contentsline {subsubsection}{University of Washington IMAP C-Client}{153}{section*.54}
\contentsline {subsubsection}{Compiling Asterisk}{154}{section*.55}
\contentsline {subsection}{\numberline {11.2.2}Modify voicemail.conf}{155}{subsection.11.2.2}
\contentsline {subsection}{\numberline {11.2.3}IMAP Folders}{155}{subsection.11.2.3}
\contentsline {subsection}{\numberline {11.2.4}Separate vs. Shared Email Accounts}{156}{subsection.11.2.4}
\contentsline {subsection}{\numberline {11.2.5}IMAP Server Implementations}{156}{subsection.11.2.5}
\contentsline {subsubsection}{UW IMAP-2005 or earlier}{156}{section*.56}
\contentsline {subsubsection}{UW IMAP-2006}{156}{section*.57}
\contentsline {subsubsection}{UW IMAP-2007}{157}{section*.58}
\contentsline {subsubsection}{Cyrus IMAP}{157}{section*.59}
\contentsline {subsection}{\numberline {11.2.6}Quota Support}{157}{subsection.11.2.6}
\contentsline {subsection}{\numberline {11.2.7}Application Notes}{157}{subsection.11.2.7}
\contentsline {chapter}{\numberline {12}SMS}{158}{chapter.12}
\contentsline {section}{\numberline {12.1}Introduction}{158}{section.12.1}
\contentsline {section}{\numberline {12.2}Background}{158}{section.12.2}
\contentsline {section}{\numberline {12.3}Typical use with Asterisk}{159}{section.12.3}
\contentsline {section}{\numberline {12.4}Terminology}{159}{section.12.4}
\contentsline {section}{\numberline {12.5}Sub address}{160}{section.12.5}
\contentsline {section}{\numberline {12.6}extensions.conf}{160}{section.12.6}
\contentsline {section}{\numberline {12.7}Using smsq}{161}{section.12.7}
\contentsline {section}{\numberline {12.8}File formats}{167}{section.12.8}
\contentsline {section}{\numberline {12.9}Delivery reports}{169}{section.12.9}
\contentsline {chapter}{\numberline {13}Queues}{170}{chapter.13}
\contentsline {section}{\numberline {13.1}Introduction}{170}{section.13.1}
\contentsline {section}{\numberline {13.2}Configuring Call Queues}{170}{section.13.2}
\contentsline {subsection}{\numberline {13.2.1}queues.conf}{170}{subsection.13.2.1}
\contentsline {subsection}{\numberline {13.2.2}Routing incoming Calls to Queues}{171}{subsection.13.2.2}
\contentsline {subsubsection}{The Main Menu}{171}{section*.60}
\contentsline {subsubsection}{The Contexts referenced from the queues.conf file}{172}{section*.61}
\contentsline {subsection}{\numberline {13.2.3}Assigning agents to Queues}{174}{subsection.13.2.3}
\contentsline {subsubsection}{Agents Log In and Out}{175}{section*.62}
\contentsline {subsection}{\numberline {13.2.4}Controlling The Way Queues Call the Agents}{177}{subsection.13.2.4}
\contentsline {subsection}{\numberline {13.2.5}Pre Acknowledgement Message}{179}{subsection.13.2.5}
\contentsline {subsection}{\numberline {13.2.6}Caveats}{179}{subsection.13.2.6}
\contentsline {section}{\numberline {13.3}Queue Logs}{180}{section.13.3}
\contentsline {chapter}{\numberline {14}Phone Provisioning}{183}{chapter.14}
\contentsline {section}{\numberline {14.1}Introduction}{183}{section.14.1}
\contentsline {section}{\numberline {14.2}Configuration of phoneprov.conf}{183}{section.14.2}
\contentsline {subsection}{\numberline {14.2.1}The [general] section}{183}{subsection.14.2.1}
\contentsline {subsection}{\numberline {14.2.2}Creating phone profiles}{184}{subsection.14.2.2}
\contentsline {section}{\numberline {14.3}Configuration of users.conf}{185}{section.14.3}
\contentsline {subsection}{\numberline {14.3.1}The [general] section}{185}{subsection.14.3.1}
\contentsline {subsection}{\numberline {14.3.2}Invdividual Users}{186}{subsection.14.3.2}
\contentsline {section}{\numberline {14.4}Templates}{186}{section.14.4}
\contentsline {section}{\numberline {14.5}Putting it all together}{188}{section.14.5}
\contentsline {chapter}{\numberline {15}Development}{190}{chapter.15}
\contentsline {section}{\numberline {15.1}Backtrace}{190}{section.15.1}
